package jgl.vajra.kingkong.part.vehicle.contract;

import java.util.List;
import java.util.Map;

import io.reactivex.Observable;
import jgl.vajra.kingkong.bean.HomeCarModelBean;
import jgl.vajra.kingkong.bean.HomeMechanicsBean;
import jgl.vajra.kingkong.databinding.ActivityPriceCalculatorBinding;
import jgl.vajra.kingkong.widget.mvvm.model.BaseModel;
import jgl.vajra.kingkong.widget.mvvm.view.BaseMVVMView;
import jgl.vajra.kingkong.widget.mvvm.viewmodel.BaseViewModel;

public class PriceCalculatorContract {
    public abstract static class Model extends BaseModel {
        public abstract Observable<List<HomeMechanicsBean>> getCarTypeData(Map<String, Object> map);

        public abstract Observable<List<HomeCarModelBean>> getCarModelData(Map<String, Object> mapCarModel);
    }

    public interface View extends BaseMVVMView {

        void onTriangle();

        void onAllMachinery();

        void onAllVehicle();


        void onSettleAccounts();

        void onDeletePlace(int position);

        void onClickMechanics(int position, HomeMechanicsBean itemData);

        void returnHomeMechanicsBean(List<HomeMechanicsBean> homeMechanicsBean);

        void returnHomeCarModelBean(List<HomeCarModelBean> data);
    }

    public abstract static class ViewModel extends BaseViewModel<View, ActivityPriceCalculatorBinding, Model> {
        public abstract void getCarTypeData(Map<String, Object> map);

        public abstract void getCarModelData(Map<String, Object> mapCarModel);
    }
}
